public enum TokenCode {
    UNDEFINED, // 未定义

    /* KW 关键字 */
    KW_INT, // int
    KW_FLOAT, // float
    KW_CHAR, // char
    KW_VOID, // void
    KW_RETURN, // return
    KW_CONST, // const
    KW_MAIN, // main
    KW_STRUCT, // struct
    KW_UNION, // union
    KW_SWITCH, // switch
    KW_DEFAULT, // default
    KW_BREAK, // break
    KW_CASE, // case

    /* OP 运算符 */
    OP_NOT,  //!
    OP_PLUS, // +
    OP_MINUS, // -
    OP_MULTIPLY, // *
    OP_DIVIDE, // /
    OP_PERCENT, // %
    OP_ASSIGN, // =
    OP_GT, // >
    OP_LT, // <
    OP_EQUAL, // ==
    OP_LEQ, // <=
    OP_GEQ, // >=
    OP_NEQ, // !=
    OP_AND, // &&
    OP_OR, // ||

    /* SE 界符 */
    SE_LPARENT, // (
    SE_RPARENT, // )
    SE_LBRACES, // {
    SE_RBARCES, // }
    SE_SEMICOLON, // ;
    SE_COLON, // :
    SE_COMMA, // ,
    SE_SINGLE_QUOTE, // ,

    IDN, // 标识符: (letter|_)(letter|digit|_)*
    INT, // 整数: digit digit*
    FLOAT, // 浮点数: digit*.digit*
    CHAR // 
}